Embodiments of the invention are generally directed to approaches for rendering map data supplied by a network server. More specifically, embodiments of the invention provide an efficient approach for rendering contiguous polylines with similar dynamic characteristics rendered as part of a geospatial visualization.
A geographic information system (GIS) generally refers to computer systems and software used to capture, store, manipulate, analyze, manage, and display a variety of geographic information and related data. Typically, a GIS system allows users to view geographic or geospatial data rendered as a map. A GIS system may also use the geographic (and other) data to create a variety of reports, charts, or other visualizations presented along with the map data. For example, a common use of a GIS system is to provide users with a visualization of a map—such as a roadmap. In addition to the geographical map data, a GIS system can provide additional features or visual elements rendered on (or with) a map data. For example, a GIS system could provide driving directions between two locations along with a path representing a route between two such locations rendered along with the map data. Further, the GIS system can integrate other information, e.g., to provide driving directions that take into account (or simply convey) current traffic conditions or public transportation directions that factor in current delays. Doing so may require the GIS system to interact with some other data source, e.g., real-time public transportation schedules or current traffic, to respond to a client request for map data. In addition to these “road-map” type applications, a GIS system may be used for a variety of other applications including, e.g., archaeology, geography, cartography, land surveying, public utility management, natural resource management, urban planning, emergency management, network management, supply chain management, fleet management, etc.
A GIS system may represent map data using vector graphics elements (i.e., using a collection of geometric primitives such as points, lines, curves and polygons). For example, a roadway rendered as a single, contiguous line may actually be represented as a large collection of individual road segments. To create an image, a client renders the map data by processing each such segment, even though the individual segments may be indistinguishable in the rendered visualization. Thus, in some cases, visualizing GIS data can require large amounts of map data to be processed. And in cases where the visualization includes dynamic aspects, the amount of data processed by the client increases accordingly.